package cn.fl.system.transform;

import cmm.user.facade.system.dto.SysUsrAppealLogDTO;
import cn.cmm.base.framework.utils.CollectionUtils;
import cn.fl.system.vo.SysUsrAppealLogVO;

import java.util.ArrayList;
import java.util.List;


/**
* @Description: 用户申诉记录表 转换器
* @Description: VO是客户端传递数据到服务端进行转换的数据
* @Description: VO转换数据变成DTO传递到服务端
* @Description: VO不能在服务端出现
*/
public class SysUsrAppealLogVOTransform {


   /**
    * DTO 转  VO
    * @param po SysUsrAppealLogDTO
    * @return SysUsrAppealLogVO
    */
   public static SysUsrAppealLogVO toVO(SysUsrAppealLogDTO dto) {
       SysUsrAppealLogVO  vo = null;
       if (dto != null) {
           vo = new SysUsrAppealLogVO();
           vo.setId(dto.getId());
           vo.setUsrNm(dto.getUsrNm());//用户名
           vo.setSysCd(dto.getSysCd());//系统编码
           vo.setMp(dto.getMp());//手机号
           vo.setRlNm(dto.getRlNm());//姓名
           vo.setCertNo(dto.getCertNo());//身份证号
           vo.setBuOrgCd(dto.getBuOrgCd());//所属部门
           vo.setResult(dto.getResult());//申诉结果（0未处理1同意2驳回）
           vo.setAppealCause(dto.getAppealCause());//申诉原因
           vo.setDeviceId(dto.getDeviceId());//设备ID
           vo.setAppealOpinion(dto.getAppealOpinion());//处理意见
           vo.setIsDel(dto.getIsDel());//是否删除（1：是，0：否）（SYS0021）
           vo.setApprovers(dto.getApprovers());

           vo.setCrtTm(dto.getCrtTm());//创建时间
           vo.setCrtUsrId(dto.getCrtUsrId());//创建人
           vo.setMdfTm(dto.getMdfTm());//修改时间
           vo.setMdfUsrId(dto.getMdfUsrId());//修改人
       }
       return vo;
   }

   /**
    * VO 转 DTO
    * @param dto SysUsrAppealLogVO
    * @return SysUsrAppealLogDTO
    */
   public static SysUsrAppealLogDTO toDTO(SysUsrAppealLogVO vo) {
       SysUsrAppealLogDTO dto = null;
       if (vo != null) {
           dto = new SysUsrAppealLogDTO();
           dto.setId(vo.getId());
           dto.setUsrNm(vo.getUsrNm());//用户名
           dto.setSysCd(vo.getSysCd());//系统编码
           dto.setMp(vo.getMp());//手机号
           dto.setRlNm(vo.getRlNm());//姓名
           dto.setCertNo(vo.getCertNo());//身份证号
           dto.setBuOrgCd(vo.getBuOrgCd());//所属部门
           dto.setResult(vo.getResult());//申诉结果（0未处理1同意2驳回）
           dto.setAppealCause(vo.getAppealCause());//申诉原因
           dto.setDeviceId(vo.getDeviceId());//设备ID
           dto.setAppealOpinion(vo.getAppealOpinion());//处理意见
           dto.setIsDel(vo.getIsDel());//是否删除（1：是，0：否）（SYS0021）
           dto.setApprovers(vo.getApprovers());
           dto.setCrtTm(vo.getCrtTm());//创建时间
           dto.setCrtUsrId(vo.getCrtUsrId());//创建人
           dto.setMdfTm(vo.getMdfTm());//修改时间
           dto.setMdfUsrId(vo.getMdfUsrId());//修改人
       }
       return dto;
   }

    /**
     * DTO集合 转 VO集合
     * @param List<SysUsrAppealLogDTO>
     * @return List<SysUsrAppealLogVO>
     */
    public static List<SysUsrAppealLogVO> toVOList(List<SysUsrAppealLogDTO> list) {
        List<SysUsrAppealLogVO>  voList = new ArrayList<SysUsrAppealLogVO>();
        if(CollectionUtils.isNotEmpty(list)){
            for (SysUsrAppealLogDTO dto : list) {
                voList.add(toVO(dto));
            }
        }
        return voList;
    }

    /**
     * VO集合 转 DTO集合
     * @param list List<SysUsrAppealLogVO>
     * @return List<SysUsrAppealLogDTO>
     */
    public static List<SysUsrAppealLogDTO> toDTOList(List<SysUsrAppealLogVO> list) {
        List<SysUsrAppealLogDTO>  dtoList = new ArrayList<SysUsrAppealLogDTO>();
        if(CollectionUtils.isNotEmpty(list)){
            for (SysUsrAppealLogVO vo : list) {
                dtoList.add(toDTO(vo));
            }
        }
        return dtoList;
    }
}
